package main.dao;

import java.io.Serializable;
import java.util.List;

//@Repository
public interface IBaseDAO<T> {
	T getByID(Class<T> entityClass, Serializable ID);
	T load(Class<T> entityClass, Serializable id);
	List<T> getByEntity(T entity);
	List<T> loadAll(Class<T> entityClass);
	Integer save(T entity);
	Boolean update(T entity);
	Boolean remove(T entity);
	List<T> findByExample(T entity);
	List<T> findByHQL(String queryString);
	@SuppressWarnings("rawtypes")
	List findByHQL(String hql, Object... params);
}
